Method and device for composite machining based on tool-path pattern types with tool axis orientation rules

ABSTRACT

Computer-enabled methods and devices allow for the ready set-up for machine instruction generation by addressing various combinations of machining patterns and tool axis orientations via the selection or designation of a machining pattern and the selection or designation of a tool axis orientation via exemplary separate menus of a user interface.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of Ser. No. 12/027,462, filed Feb. 7,2008 now U.S. Pat. No. 7,894,930.

FIELD OF ENDEAVOR

The invention in its several embodiments relates generally to tool pathtrajectory planning for computer aided manufacturing (CAM) and moreparticularly to the definitions made by the user interface to set upprogramming for computer numerical control (CNC) of a multi-axis machinetool for workshop machining.

BACKGROUND

Computer aided manufacturing (CAM) software systems are used to programcomputer numerical control (CNC) machine tools that are used in machineshops for the production of discrete parts such as molds, dies, tools,prototypes, aerospace components and more. There is an increasing trendin the modern machine shop to apply simultaneous five-axis machine toolsthat are capable of 3-axis linear (X, Y, Z) movements in combinationwith 2-axis (A, B) rotational movements. In this type of machine, duringthe machining process, the cutting tool and the workpiece are movedsimultaneously in five-axes relative to each other as described by a CNCprogram.

Generating a CNC program to control the movements of these five-axismachine tools—one that fully exercises all five axes—is challengingbecause such application present complexities that may be bothmathematical and technological in nature. A CAM system for programmingfive-axis machine tools should be easy for the user to operate andshould produce error-free CNC programs. Any small error in the CNCprogram will result in expensive and/or irreparable damage to theworkpiece, cutting tools and/or the machine tool itself. When executed,the state of the art five-axis CAM software contains a number ofspecific machining cycles where, in an effort to make the machiningcycle understandable for the user, each cycle contains a smaller numberof options. That is, the current state-of-the-art in five-axis CAMsoftware provides the user a machining cycle which is comprised of asingle, or a small number, of patterns with a single, or a small numberof, orientations. Each combination of pattern and orientation iscommonly presented as a new machining cycle. The limited number ofoptions results in those machining cycles being inflexible, due to thelimited number of uses. In addition, the number of specific machiningcycles results in the duplication of the detailed steps of execution ofeach independent machining cycle in order to cover the wide variety ofmachining needed. From the point of view of the embodied CAM steps, theproliferation of machining cycles, often with overlapping requirements,exponentially increases the effort to embody the steps and maintain boththe internal steps for execution via machine-readable code and the userinterface. The volume of internal steps and maintenance thereof can workto strain the reliability of CAM steps.

SUMMARY

Computer-enabled methods and devices of the present invention allow forthe ready set-up for machine instruction generation by addressingvarious combinations of machining patterns and tool axis orientationsvia the selection or designation of a machining pattern and theselection or designation of a tool axis orientation, for example viaseparate menus of a user interface. The invention, in its severalembodiments includes a computer-enabled method of tool position planningfor operations to be performed by a machining tool of a machiningstation on a workpiece in accordance with the tool position plan, themethod comprising: (a) receiving a machining pattern; (b) receiving atool axis orientation, in either order of occurrence; (c) determining atool position plan based on the received machining pattern and thereceived tool axis orientation; and (d) outputting the tool positionplan as one or more machine instructions. In some exemplary embodimentsof the computer-enabled method, the machining pattern may be based on auser selection from a first menu comprising a plurality of machiningpatterns. In some exemplary embodiments of the computer-enabled method,the tool axis orientation may be based on a user selection from a secondmenu comprising a plurality of tool axis orientations. In some exemplaryembodiments of the computer-enabled method, before the step of receivinga tool axis orientation, there may be a step of defining the orientationof the machining tool axis relative to the workpiece. In some exemplaryembodiments the computer-enabled method, before the step of receiving amachining pattern, there may be a step of determining an area of theworkpiece to be machined. In some exemplary embodiments thecomputer-enabled method, before the step of determining a tool positionplan based on the received machining pattern and the received tool axisorientation, there may be a step of defining one or more rules for atleast one of: (i) approaching the workpiece; (ii) departing theworkpiece; and (iii) linking two or more sub-areas of the defined areaof the workpiece to be machined. In some exemplary embodiments thecomputer-enabled method, before the step outputting the tool positionplan as one or more machine instructions, there may be a step ofconverting into one or more machine instructions at least one of: (i)the defined area of the workpiece to be machined; (ii) the receivedmachining pattern; (iii) the received tool orientation; and (iv) atleast one of the defined rules for approaching the workpiece, departingthe workpiece, and linking two or more sub-areas of the defined area ofthe workpiece to be machined.

The invention, in its several embodiments, also includes a device forgenerating instructions for a machining tool, the device comprising: (a)input means for receiving a machining pattern; (b) input means forreceiving a tool axis orientation; (c) a processing module havingaddressable memory, the processing module adapted to determine a toolposition plan based on a received machining pattern and a received toolaxis orientation; and (d) means for outputting the tool position plan asone or more machine instructions. In some embodiments of the device forgenerating instructions for a machining tool, the input means forreceiving a machining pattern may be at least one of: an electricalcommunication; a wireless communication receiver; a reader of a memorystore; and a reader of portable media. In some embodiments of the devicefor generating instructions for a machining tool, the input means forreceiving a tool axis orientation is at least one of: an electricalcommunication; a wireless communication receiver; a reader of a memorystore; and a reader of portable media. In some embodiments of the devicefor generating instructions for a machining tool, the input means forreceiving means for outputting the tool position plan is at least oneof: an electrical communication; a wireless communication transmitter; awriter to a memory store; and a writer to portable media. In someembodiments of the device for generating instructions for a machiningtool, the device further comprises a user interface adapted to receive auser selection from a first menu comprising a plurality of machiningpatterns. In some embodiments of the device for generating instructionsfor a machining tool, the device further comprises a user interfaceadapted to receive a user selection from a second menu comprising aplurality of tool axis orientations. In some embodiments of the devicefor generating instructions for a machining tool, the device furthercomprises a user interface adapted to receive a user selection from afirst menu comprising a plurality of machining patterns and from asecond menu comprising a plurality of tool axis orientations. In someembodiments of the device for generating instructions for a machiningtool, the device further comprises input means for receiving a workpiecearea definition wherein the input means for receiving a workpiece areadefinition is at least one of: a user interface, an electricalcommunication; a wireless communication receiver; a reader of a memorystore; and a reader of portable media. In some embodiments of the devicefor generating instructions for a machining tool, the device may befurther adapted to determine a tool position plan based on a receivedmachining pattern, a received tool axis orientation, and a definedworkpiece area to be machined.

BRIEF DESCRIPTION OF THE DRAWINGS

For a more complete understanding of the present invention reference isnow made to the following description taken in conjunction with theaccompanying drawings, in which:

FIG. 1 is a top level functional block diagram of a system embodiment ofthe present invention;

FIG. 2 is a top level flowchart of an exemplary method embodiment of thepresent invention;

FIG. 3A and FIG. 3B together are a top level flowchart of an exemplarymethod embodiment of the present invention;

FIG. 4 is an exemplary functional block diagram of a portion of anexemplary embodiment of the present invention; and

FIG. 5A and FIG. 5B together are a top level flowchart of an exemplarymethod embodiment of the present invention.

DETAILED DESCRIPTION

The invention in its several embodiments includes a computer aidedmanufacturing system 100, as illustrated in a functional block diagramin FIG. 1, where the system comprises a machining apparatus 130 and adevice 102 comprising a planning module 110 and a numerical codegenerator 120. The planning module 110 has a processing module and thenumerical code generator 120 may be a separate processing module or maybe embodied as computer-executed instructions that are executed by theprocessing module of the planning module. The machining apparatus 130may provide a machining tool or cutting tool and may reorient thecutting tool relative to a workpiece according to instructions providedby the numerical code generator 120. The position of the cutting toolmay be expressed in three absolute positions, i.e., XYZ, and two rotarypositions, i.e., A—a rotary position about X, and B—a rotary positionabout Y. The numerical code generator may be responsive to the output ofthe planning module 110. The planning module may have access to one ormore databases 140 comprising computer-based models of: (a) areas 141 ofa workpiece to be machined; (b) patterns 142 that may be applied formachining the workpiece; (c) relationships expressing the relativeorientation 143 between a cutting tool of the machining apparatus 130and the workpiece; and (d) auxiliary movements 144 that may include: (1)instructions for approaching the workpiece; (2) instructions fordeparting the workpiece; and (3) instructions for movements linkingmachining sub-areas. Via a user interface 150, a user of the system 100may select files or objects from the databases 140 for application bythe planning module 110 to generate the numerical code 121 that may forexample be G-code. The machining apparatus 130 may then receive theG-code and execute the coded instructions to drive the machine tool. Forexample, the device may have a user interface 150 adapted to receive auser selection from a first menu 151 that may be a touch screen, or adisplay and indicating device, where the first menu 151 includes aplurality of machining patterns and the device may have a user interface150 adapted to receive from a second menu 152 that may be presented viathe same touch screen, or a display and indicating device, as the firstmenu 151 or via a separate touch screen, or a display and indicatingdevice, where the second menu 152 includes a plurality of tool axisorientations.

The invention in its several embodiments includes an exemplary method offive-axis machining, as illustrated in a top-level flowchart of FIG. 2where a composite machining cycle includes a planning or programmingprocess comprising four steps which may then be followed by the CNCcoding. The exemplary four planning steps of the five-axis compositemachining comprise: (a) defining or selecting the area of the workpieceto be machined (step 210); (b) selecting the pattern to apply whenmachining the selected area (step 220); (c) defining the orientation ofthe relationships between the cutting tool and the workpiece (step 230);and (d) defining the auxiliary movements (step 240) that may include:(1) approaching the workpiece; (2) departing the workpiece; and (3)movements linking machining sub-areas. Thereafter, the method mayinclude the step of generating the CNC code (step 250).

Another method embodiment may be described in the top level flowchartsof FIGS. 3A and 3B. The exemplary steps comprises: selecting an area formachining by defining the selected region via a defined set of surfaces(step 310); selecting a generation method for a pattern of curves (step320); selecting a rule for driving the tool axis direction along thecurves (step 330); selecting the lateral increments between the singlecuts of the tool path (step 340); selecting, for each set of cuts, thetype of approaches, the detach at the beginning and the detach at theend (step 350); selecting the types of connections between the largerportions of the tool path (step 360); selecting a anomalous eventresponse (step 370); and determining a tool path (step 380).

Illustrated in FIG. 4 is an exemplary functional block diagram of thecontent and use of a curve pattern database of an embodiment of thepresent invention. The plurality of rules of generating a pattern ofcurves on the area to be machined 410 may be used to establish a curvepattern database 420 and the curve pattern database may be referenced toalong with the rules to define the machine tool axis direction along thepoints of the curve 430. Exemplary curve generation methods include: (a)isoparametric interpolation; (b) projection of drive surfaceisoparametrics; (c) intersection with a set of planes; and (d)offsetting from a defined or given contour. The curve pattern datacomprising the curve pattern database may be expressed as: (a) points inXYZ; (b) a surface of pertinence; (c) a vector normal to the belongingsurface; and UV-mapping onto the surface, where U=ƒ₁(x,y,z) andV=ƒ₂(x,y,z). The exemplary rules to define a tool axis of directionalong the points of the curve pattern may include: (a) a directionnormal to the drive surface or normal to the machined surface; (b) adirection passing through a fixed point or through points of a givencurve; and (c) a direction parallel to a given fixed vector.

FIGS. 5A and 5B illustrate in top level flowchart form an example of thecomposite machining method where one may select an entire workpiece formachining (step 510), one may select a curve pattern that comprises aseries of planes, each perpendicular to a given curve, that intersectthe workpiece surfaces (step 520), the tool axis of direction may beselected as being normal to the surface of the workpiece to be machined(step 530), the lateral increments between single cuts or workfeed linksmay be selected as fluent cubic links (steps 540); the approaches anddetaches are selected as motion about a radius or radiused (step 550);and the connection between large portions of the tool path may beselected as rapid links thatn in this example may be radial about theX-axis (step 560). With the planning completen the tool path may bedetermined (step 580).

With this composite machining method, many different methods formachining a part having multiple machining cycles, may be condensed intoone composite machining function. From the perspective of the CAM systemdevelopment, to realize such a composite function implies building eachindividual orientation and each individual pattern as objects that maybe used interchangeably. This interchangeable object approach provides ahigh rate of reliability in the resulting software, as any individualobject is cleared of parasite dependency and appears only once in thesoftware body.

The method of the five-axis composite machining cycle makes available toa user a set of choices for the selection of the pattern, a selectiontypically larger in number than the state-of-the-art, and makesavailable the pattern choices in combination with the range of choicesfor orientation typically greater in number than the state-of-the-art.Accordingly, by selecting a combination of pattern and orientation, theuser may readily and reliably setup a five-axis machining cycle. Forexample, if the number of available choices for the patterns is six, andthe available choices for orientation is six, the user may choose from36 combined ways to machine the part. From the point of view of the CAMsystem development, adding, in this example, one new choice for theorientation means automatically having six new and different machiningcycles—one for each existing pattern.

One of ordinary skill in the art will also appreciate that the modulesand functions described herein may be further subdivided, combined,and/or varied and yet still be in the spirit of the embodiments of theinvention. In addition, while a number of variations of the inventionhave been shown and described in detail, other modifications, which arewithin the scope of this invention, will be readily apparent to those ofordinary skill in the art based upon this disclosure, e.g., theexemplary flowcharts or processes described herein may be modified andvaried and yet still be in the spirit of the invention. It is alsocontemplated that various combinations or subcombinations of thespecific features and aspects of the embodiments may be made and stillfall within the scope of the invention. Accordingly, it should beunderstood that various features and aspects of the disclosedembodiments can be combined with or substituted for one another in orderto form varying modes of the disclosed invention. Thus, it is intendedthat the scope of the present invention herein disclosed should not belimited by the particular disclosed embodiments described above.

What is claimed is:
 1. A computer-enabled method of determining asequence of five-axis operations to be performed by a cutting tool of amachining station on a workpiece, the method comprising: receiving amachining pattern; defining an orientation of an axis of the cuttingtool with respect to the workpiece; receiving the orientation of atleast one of the axes of the cutting tool; defining one or more rulesfor at least one of: (a) approaching the workpiece; (b) departing theworkpiece; and (c) linking two or more sub-areas of the determined areaof the workpiece to be machined; determining a sequence of movements ofthe cutting tool having five axes of operation, the determination basedon the received machining pattern and the received orientation of atleast one of the axes of the cutting tool, wherein the determinedsequence of movements of the cutting tool is a member of a set ofmovements of the cutting tool; and converting into one or more machineinstructions at least one of: (a) a determined area of the workpiece tobe machined; (b) the machining pattern; (c) the received orientation ofat least one of the axes of the cutting tool; and (d) at least one ofthe defined rules for approaching the workpiece, departing theworkpiece, and linking two or more sub-areas of the area of theworkpiece to be machined.
 2. The computer-enabled method of claim 1wherein the machining pattern is based on a user selection from a firstmenu comprising a plurality of machining patterns.
 3. Thecomputer-enabled method of claim 1, wherein the orientation of at leastone of the axes of the cutting tool is based on a user selection from asecond menu comprising a plurality of orientations of the cutting tool.4. The computer-enabled method of claim 1 further comprising: outputtingthe sequence of movements of the cutting tool as one or more machineinstructions.
 5. A device for generating instructions for a machiningtool, the device comprising: input means for receiving a machiningpattern; input means for receiving a tool axis orientation; a processingmodule having addressable memory, the processing module adapted todetermine a sequence of movements of the cutting tool having five axesof operation, the determination based on a received machining patternand the received axis of orientation wherein the determined sequence ofmovements of the cutting tool is a member of a set of sequences ofmovements of the cutting tool.
 6. The device of claim 5 wherein themeans for outputting the determined sequence of movements of the cuttingtool as one or more machine instructions.
 7. The device of claim 5wherein the input means for receiving the machining pattern is at leastone of: an electrical communication; a wireless communication receiver;a reader of a memory store; and a reader of portable media.
 8. Thedevice of claim 5 wherein the input means for receiving orientation ofthe axis of the cutting tool is at least one of: an electricalcommunication; a wireless communication receiver; a reader of a memorystore; and a reader of portable media.
 9. The device of claim 5 whereinthe means for outputting the determined sequence of movements of thecutting tool is at least one of: an electrical communication; a wirelesscommunication transmitter; a writer to a memory store; and a writer toportable media.
 10. The device of claim 5 further comprising a userinterface adapted to receive a user selection from a first menucomprising a plurality of machining patterns.
 11. The device of claim 5further comprising a user interface adapted to receive a user selectionfrom a second menu comprising a plurality of orientations of the axes ofthe cutting tool.
 12. The device of claim 5 further comprising a userinterface adapted to receive a user selection from a first menucomprising a plurality of machining patterns and from a second menucomprising a plurality of orientations of axes of the cutting tool. 13.The device of claim 5 further comprising input means for receiving aworkpiece area definition wherein the input means for receiving theworkpiece area definition is at least one of: a user interface; anelectrical communication; a wireless communication receiver; a reader ofa memory store; and a reader of portable media.
 14. The device of claim5 wherein the processing module is further adapted to determine thesequence of movements of the cutting tool based on the receivedmachining pattern, the received orientation of the axis of the cuttingtool, and a defined workpiece area to be machined.
 15. A method of usinga device for composite machining based on tool-path pattern types withcutting tool axis orientation rules for five axes of cutting tooloperation comprising: selecting, via a user interface of the device,from a set of available choices of tool-path pattern types, wherein adisplayed set of available choices of tool-path pattern types isindependent of a user selection from a displayed set of availablechoices of tool axis orientation rules; selecting, via the userinterface of the device, from a set of available choices of orientationrules of the axis of the cutting tool, wherein the displayed set ofavailable choices of orientation rules of the axis of the cutting toolis independent of a user selection from the displayed set of availablechoices of tool-path pattern types; and receiving a sequence ofmovements of the cutting tool, wherein the received sequence ofmovements of the cutting tool, within the five axes of cutting tooloperation, is a member of a set of sequences of movements of the cuttingtool.